package java8._03_Lambda;

public class _01_test {

    public static void main(String[] args) {

        int num = 1;
        A1 a = () -> {
            System.out.println(num);
        };

        B2 b = () -> { };
        Son son = () -> { };
        System.out.println("-------------------华丽分割线----------------------");
        a.out();
        b.out();
        son.out();
        Thread thread = new Thread(() -> Math.random());
        B2 sonB2 = son;
        B2.xx();

    }
    @FunctionalInterface
    interface Father {
        void test();
        default void out() {
            System.out.println("Father");
        }
        public static void xx() {
            System.out.println("-------------------华丽分割线----------------------");
        }
    }

    @FunctionalInterface
    interface A1 extends Father{
        default void out() {
            System.out.println("A11");
        }
    }

    @FunctionalInterface
    interface A2 extends A1{
        public static void xx() {
            System.out.println("-------------------华丽分割线----------------------");
        }
    }


    @FunctionalInterface
    interface B1 extends Father{
    }

    @FunctionalInterface
    interface B2 extends B1{
        public static void xx() {
            System.out.println("-------------------华丽分割线----------------------");
        }
    }

    @FunctionalInterface
    interface Son extends A2,B2{
    }


}
